/*ajax发送请求
返回的对象包含的属性(status,message,data)
status包含状态，message包含提示信息，data代表数据*/
function _ajax(method, url, data, callback) {
	startLoading();
	$.ajax({type: method,
		url: url,
		data: data,
		dataType: "json"
	}).done(function(r) {
		// 如果返回数据不为空且属性status为0表示错误
		stopLoading();
		if (r && !r.status) {
			return callback && callback(r);
		} else {
			return callback && callback(null, r);
		}
	}).fail(function(jqXHR, textStatus) {
		stopLoading();
		return callback && callback({error: "HTTP " + jqXHR.status, message: "NetWork error (HTTP " + jqXHR.status + ")"});
	});
}

function getApi(url, data, callback) {
	if (arguments.length === 2) {
		callback = data;
		data = {};
	}
	_ajax("GET", url, data, callback);
}

function postApi(url, data, callback) {
	if (arguments.length === 2) {
		callback = data;
		data = {};
	}
	_ajax("POST", url, data, callback);
}

//显示错误
function showError(err) {
	var alert = $("div.alert-danger");
	setTimeout(function() { //提示在10秒后小时
			alert.fadeOut();
	},5000);

	if (err) {
		showSuccess("");
		alert.text(err).removeClass("hidden");
		alert.hide(); //增加动画效果
		alert.fadeIn("slow");
	} else {
		alert.addClass("hidden").hide().text("");
	}
}

//提示成功
function showSuccess(message) {
	var alert = $("div.alert-success");
	setTimeout(function() { //提示在10秒后小时
		alert.fadeOut();
	},5000);

	if (message) {
		showError("");
		alert.text(message).removeClass("hidden");
		alert.hide(); //增加动画效果
		alert.fadeIn("slow");
	} else {
		alert.addClass("hidden").hide().text("");
	}
}

function showSuccessReload(message) {
	showSuccess(message);
	setTimeout(function() {
		location.reload();
	}, 2000);
}

// 为输入框增加has-error属性
function addError(obj, message) {
	obj.removeClass("has-success").addClass("has-error");
	obj.find(".help-block").text(message).show();
	obj.find(".form-control-feedback").removeClass("hidden").removeClass("glyphicon-ok").addClass("glyphicon-remove");
	//submitBtn.addClass("disabled");
}

// 为输入框增加has-success属性
function addSuccess(obj) {
	obj.removeClass("has-error").addClass("has-success");
	obj.find(".help-block").text("").hide();
	obj.find(".form-control-feedback").removeClass("hidden").removeClass("glyphicon-remove").addClass("glyphicon-ok");
	//submitBtn.removeClass("disabled");
}
//为输入框删除属性
function removeErrorSuccess(obj , obj2){
	obj.removeClass("has-error");
	obj.removeClass("has-success");
	obj.find(".help-block").text("").hide();
	obj.find(".form-control-feedback").removeClass("hidden").removeClass("glyphicon-remove");
	obj.find(".form-control-feedback").removeClass("hidden").removeClass("glyphicon-ok");
	obj2.val("");
}

// ajax请求时页面效果
function startLoading() {
	$(".loading").show();
}

function stopLoading() {
	$(".loading").hide();
}